For proper determination of gas or hydrocarbon reserves in a reservoir, it is useful to establish grids (or a mesh model) of the reservoirs, for example on the basis of 3D seismic interpretation of the subsurface.
The reservoir grids contain mesh layers. These layers often tend to be representative of the sedimentation layers present in the subsurface.
Thus, the mesh layers of the model attempt to follow the stratigraphic layers determined by various tools (seismic tools, modeling based on well data, etc.). In addition, a mesh may be constrained by a number of topological and/or geometrical conditions.
It is possible that the various tools available to geologists or well engineers do not provide the same results, or that topological and/or geometric conditions (for example well data) do not exactly match the results provided by these tools. In addition, these tools can provide results containing uncertainties (interpretation of a noisy seismic image for example). Alternative solutions can then exist.
When modifying to an alternative solution, it is often necessary to completely recalculate a new mesh model to adapt to this modification.
This recalculation can be long, tedious, and inefficient, especially if the differences between the initial solution and the new solution are small.
There is therefore a need to simplify the calculation of a new model in the case of modifying a solution to an alternative solution. The present invention improves the situation.
The present invention proposes deforming the grid of the initial model in order to allow adapting the initial model to the new alternative solution without recalculating the entire model.
The invention therefore provides a method for deforming a mesh model, said model comprising a plurality of reference interfaces comprising a sequence, each reference interface being associated with a target interface in said model.
The method comprises:                for at least one pair of successive interfaces in the sequence of the plurality of interfaces formed by a first reference interface and a second reference interface, the model comprising a plurality of alignments of mesh cell corners between said first interface and said second interface, these alignments forming mesh cell edges, each corner having initial coordinates in the model and for each current alignment among said plurality of cell corners:                    determining a first intersection between the current alignment and said first reference interface;            determining a second intersection between the current alignment and said second reference interface;            determining a third intersection between the current alignment and the target interface associated with said first reference interface;            determining a fourth intersection between the current alignment and the target interface associated with said second reference interface;            modifying the coordinates for each current corner of the alignment as a function of the initial coordinates of said current corner, of the first intersection, second intersection, third intersection, and fourth intersection, the modified coordinates of said current corner being on the current alignment.                        
The reference interfaces are surfaces (in the case of a 3D mesh) or lines (in the case of a 2D mesh) virtually separating two mesh layers. In most cases these interfaces are substantially horizontal when the sedimentary layers have not been modified. It is thus possible to say that the interfaces are defined by the upper and lower faces (3D mesh) or edges (2D mesh) of the cells of the layer: an upper reference interface and a lower reference interface are thus defined for each of the mesh layers.
It is possible to classify the different target interfaces or reference interfaces according to their position in the model (the interfaces do not intersect). For example, the upper interface of a mesh layer can have a lower sequence index than the lower interface of that layer: as the reference interfaces are a subset of the interfaces of the model, the sequence is still respected.
Of course, between two reference interfaces, a plurality of mesh layers may exist between two successive reference interfaces.
In a direction substantially perpendicular to the reference interface, mesh cell edges define a mesh corner alignment.
Most often, the intersection between a current alignment and a reference interface is an upper corner of a cell whose upper face (in the case of a 3D mesh) or upper edge (in the case of a 2D mesh) is part of this reference interface.
The modification of the coordinates of the corners keeps these corners on the alignment. While it may seem appropriate to simply move those corners along a vertical axis independently of the local characteristics of the mesh, such a simple displacement is not always appropriate. It can degrade the quality of the mesh and “break” the pillars of the mesh (sever the alignment of the edges or corners). This feature allows maintaining the ideal conditions of the model for subsequent simulations.
The method may further comprise the receiving of said mesh model.
The method may further comprise the providing of the modified mesh model containing the modified corners.
In addition, a current coordinate system may be defined along the current alignment, the first intersection having a coordinate c1 in the current coordinate system, the second intersection having a coordinate c2 in the current coordinate system, the third intersection having a coordinate c3 in the current coordinate system, the fourth intersection having a coordinate c4 in the current coordinate system, said current corner having an initial coordinate cc in the current coordinate system.
The modified coordinate of said current corner in the current coordinate system can then be a function of:
      C    n    =            C      C        +          (                        C          2                -                  C          4                    )        +                  (                              C            1                    -                      C            3                    -                      C            2                    +                      C            4                          )            ⁢                                                  C              c                        -                          C              2                                                          C              1                        -                          C              2                                      .            
Thus, the modification of a current point of the alignment can incorporate in a linear manner the displacement of the different interfaces (from reference to target).
In one possible embodiment, the method may further comprise, for at least one pair of successive interfaces, the corners of said alignments comprised between said first interface and said second interface having a sequence number in each alignment:                for each current sequence number, identification of an intermediate interface formed of cell sides, said sides having as corners the corners of said current sequence number;        for each intermediate interface and for each current corner of said current interface, a second modification of the coordinates of said current corner as a function of the current coordinates of said current corner and as a function of the current coordinates of distant corners that lie within a bounding box around the current corner.        
We are calling intermediate interfaces the interfaces, such as those described above, which are strictly comprised between the reference interfaces.
It is possible to classify the various intermediate interfaces according to their position in the model (interfaces not intersecting). For example, the upper intermediate interface of a mesh layer can have a sequence index that is lower than the lower intermediate interface of that layer.
The second modification of the coordinates of cells can allow preventing the appearance of singularities.
The distance between the current corner and the other corners can be any distance in the mathematical sense.
In addition, as the coordinates of the corners are expressed by a plurality of components, the second modification of the coordinates of said corner may comprise calculating a median filter or an average of the coordinates of said current corner along at least one component and of the coordinates of said distant corners along the at least one component.
The at least one component may be, for example, the coordinate along axis {right arrow over (z)}.
In addition, said current corner being comprised in an alignment, the second modification of the coordinates of said current corner can maintain said corner in said alignment.
Thus, if the calculation of a median filter or an average is only done on the value of a component (for example coordinates along axis {right arrow over (z)}), it is possible for the modification to impact the other coordinates by displacing said corner along the pillar (or alignment) until the displacement along the component (for example along axis {right arrow over (z)}) corresponds to the calculation.
The bounding box may also be a function of a distance from said current corner to a fault in said model.
It is thus possible to limit the impact of the second modification when the point concerned is located at a large distance from faults, meaning far from probable causes of the appearance of a singularity.
In addition, the bounding box may be a function of an anisotropic direction in said model.
In one embodiment, the anisotropic direction may be parallel to a line passing through said current corner and perpendicular to a fault in said model.
It is thus possible to reduce the number of points presenting singularities (and statistically located on faults) in the calculation of the second modification.
In addition, as the corner coordinates are expressed by a plurality of components, the distance between a current corner and a modified current corner, along at least one coordinate component, may be less than a threshold value.
It is thus possible to limit the second modification of the corners along a coordinate component (for example along the vertical axis {right arrow over (z)}). Beyond the threshold value, the modification may, for example, be limited to this threshold value along this component (for example using the min operator).
The method may further comprise, the model comprising at least one fault:                identifying at least one corner having a distance to the at least one fault that is less than a predetermined influence distance;        modifying the coordinates of the corner having a distance to the at least one fault that is less than the predetermined influence distance, as a function of modifications determined for a plurality of points having a distance to the at least one fault that is greater than the predetermined influence distance and part of a common interface with the corner having a distance to the at least one fault that is less than the predetermined influence distance.        
In one embodiment, the modification of the coordinates of the corner having a distance to the at least one fault that is less than the predetermined influence distance may comprise a calculation of a weighted average.
The weighted average may take into account the modifications calculated for points outside the area of influence of the fault, in other words beyond the predetermined influence distance. The weighting factor may be a function of the distance of the point concerned to the fault for example.
In addition, the modification of the coordinates of the corner having a distance to the at least one fault that is less than the predetermined influence distance may include a regression.
The regression (for example linear or polynomial) may take into account the modifications calculated for points outside the fault area of influence, in other words beyond the predetermined influence distance.
A device for deforming a mesh may be advantageous in itself, as it simplifies the work of geologists or well engineers.
The invention therefore also relates to a device for deforming a mesh model comprising a plurality of reference interfaces, the plurality of reference interfaces comprising a sequence and each reference interface being associated with a target interface in said model.
The device comprises:                optionally, an input interface for receiving the mesh model;        circuitry suitable for carrying out the following actions for at least one pair of successive interfaces in the sequence of the plurality of interfaces, formed by a first reference interface and a second interface reference, the model comprising between said first interface and said second interface a plurality of mesh corner alignments, these alignments forming mesh cell edges, each corner having initial coordinates in the model and for each current alignment among said plurality of mesh corners:                    determining a first intersection between the current alignment and said first reference interface;            determining a second intersection between the current alignment and said second reference interface;            determining a third intersection between the current alignment and the target interface associated with said first reference interface;            determining a fourth intersection between the current alignment and the target interface associated with said second reference interface;            modifying the coordinates for each current corner of the alignment, as a function of the initial coordinates of said current corner, the first intersection, second intersection, third intersection, and fourth intersection, the modified coordinates of said current corner being on the current alignment;                        optionally, an output interface for providing the modified mesh model.        
The invention also relates to a computer program comprising instructions for implementing the method described above, when that program is executed by a processor.
This program may use any programming language (for example, an object language or some other language), and be in the form of an executable source code, partially compiled code, or fully compiled code.
FIG. 6, described in detail below, can be the flowchart of the general algorithm of such a computer program.